home *** CD-ROM | disk | FTP | other *** search
/ The Best of MacTutor - S…e Code for Volumes 1 to 5 / The Best of MacTutor - Source Code for Volume 1-5 (Wayzata Technology)(6031)(1990).bin / Source Code / #18 (Mar 87) / Fortran Runge-Kutta / Fortran Benchmark list < prev    next >
Text File  |  1987-01-29  |  5KB  |  155 lines

  1.  
  2. FORTRAN Compiler Listing             01/29/87                       Page 1
  3.  
  4.               Source File: Fortran Benchmark.text          
  5.  
  6.  
  7. Program Unit: FORTRA   Entry: 00000444   Options: EILDK
  8.  
  9. 00001          INTEGER ORDER
  10. 00002          DIMENSION X(6),XOLD(6),XD(6)
  11. 00003          DATA B1,B2,B3,B4,B5,B6,W0/3.86,7.46,9.13,7.46,3.86,1.,50./
  12. 00004          DATA XIN/1./
  13. 00005          ORDER=6
  14. 00006          W02=W0*W0
  15. 00007          W03=W02*W0
  16. 00008          W04=W03*W0
  17. 00009          W05=W04*W0
  18. 00010          W06=W05*W0
  19. 00011          DO 10 I=1,ORDER
  20. 00012          X(I)=0.
  21. 00013   10     CONTINUE
  22. 00014          T=0.
  23. 00015          H=.0001
  24. 00016          S=0.
  25. 00017   5      IF(T.GE..5)GOTO 999
  26. 00018          S=S+H
  27. 00019          DO 20 I=1,ORDER
  28. 00020          XOLD(I)=X(I)
  29. 00021   20     CONTINUE
  30. 00022          CALL INTEG(T,XD,X,W02,W03,W04,W05,W06)
  31. 00023          DO 30 I=1,ORDER
  32. 00024          X(I)=X(I)+H*XD(I)
  33. 00025   30     CONTINUE
  34. 00026          T=T+H
  35. 00027          CALL INTEG(T,XD,X,W02,W03,W04,W05,W06)
  36. 00028          DO 40 I=1,ORDER
  37. 00029          X(I)=(XOLD(I)+X(I))/2.+.5*H*XD(I)
  38. 00030   40     CONTINUE
  39. 00031          IF(S.GE..004999)THEN
  40. 00032          S=0.
  41. 00033          WRITE(9,*)T,X(1)
  42. 00034          ELSE
  43. 00035          END IF
  44. 00036          GOTO 5
  45. 00037   999    CONTINUE
  46. 00038          END
  47.  
  48. FORTRAN Compiler Listing             01/29/87                       Page 2
  49.  
  50.               Source File: Fortran Benchmark.text          
  51.  
  52.  
  53.        Symbol and Label Tables for: FORTRA
  54.  
  55.  
  56. SYMBOL                            TYPE              ADDRESS      COMMON
  57.  
  58. ORDER                             INTEGER           00000040
  59. X                                 REAL              00000044
  60. XOLD                              REAL              00000074
  61. XD                                REAL              00000124
  62. B1+                               REAL              00000154
  63. B2+                               REAL              00000160
  64. B3+                               REAL              00000164
  65. B4+                               REAL              00000170
  66. B5+                               REAL              00000174
  67. B6+                               REAL              00000200
  68. W0+                               REAL              00000204
  69. XIN+                              REAL              00000210
  70. W02+                              REAL              00000214
  71. W03+                              REAL              00000220
  72. W04+                              REAL              00000224
  73. W05+                              REAL              00000230
  74. W06+                              REAL              00000234
  75. I+                                INTEGER           00000240
  76. T+                                REAL              00000244
  77. H+                                REAL              00000250
  78. S+                                REAL              00000254
  79.  
  80.  
  81.         STORAGE         MEMORY
  82.  
  83.         LOCAL              176
  84.  
  85.  
  86. LABEL           ADDRESS              LABEL           ADDRESS
  87.  
  88. 10              0000000736           5               0000000766
  89. 20              0000001104           30              0000001304
  90. 40              0000001572           999             0000001750
  91.  
  92. FORTRAN Compiler Listing             01/29/87                       Page 3
  93.  
  94.               Source File: Fortran Benchmark.text          
  95.  
  96.  
  97. Program Unit: INTEG    Entry: 00001760   Options: EILDK
  98.  
  99. 00039          SUBROUTINE INTEG(T,XD,X,W02,W03,W04,W05,W06)
  100. 00040          SAVE
  101. 00041          INTEGER ORDER
  102. 00042          DIMENSION X(6),XOLD(6),XD(6)
  103. 00043          DATA B1,B2,B3,B4,B5,B6,W0/3.86,7.46,9.13,7.46,3.86,1.,50./
  104. 00044          DATA XIN/1./
  105. 00045          ORDER=6
  106. 00046          XD(1)=X(2)
  107. 00047          XD(2)=X(3)
  108. 00048          XD(3)=X(4)
  109. 00049          XD(4)=X(5)
  110. 00050          XD(5)=X(6)
  111. 00051          XD(6)=W06*(XIN-B5*X(6)/W05-B4*X(5)/W04-B3*X(4)/W03
  112. 00052       +-B2*X(3)/W02-B1*X(2)/W0-X(1))/B6
  113. 00053          RETURN
  114. 00054          END
  115.  
  116. FORTRAN Compiler Listing             01/29/87                       Page 4
  117.  
  118.               Source File: Fortran Benchmark.text          
  119.  
  120.  
  121.        Symbol and Label Tables for: INTEG 
  122.  
  123.  
  124. SYMBOL                            TYPE              ADDRESS      COMMON
  125.  
  126. T+                                REAL              DUMMY
  127. XD                                REAL              DUMMY
  128. X                                 REAL              DUMMY
  129. W02+                              REAL              DUMMY
  130. W03+                              REAL              DUMMY
  131. W04+                              REAL              DUMMY
  132. W05+                              REAL              DUMMY
  133. W06+                              REAL              DUMMY
  134. ORDER                             INTEGER           00000000
  135. XOLD                              REAL              00000004
  136. B1+                               REAL              00000034
  137. B2+                               REAL              00000040
  138. B3+                               REAL              00000044
  139. B4+                               REAL              00000050
  140. B5+                               REAL              00000054
  141. B6+                               REAL              00000060
  142. W0+                               REAL              00000064
  143. XIN+                              REAL              00000070
  144.  
  145.  
  146.         STORAGE         MEMORY
  147.  
  148.         LOCAL               60
  149.  
  150.  
  151. LABEL           ADDRESS              LABEL           ADDRESS
  152.  
  153.  
  154. *****  0 errors
  155.